package com.why.constantpool;

import java.io.InputStream;

/**
 * @author by xiaoTian
 * @date 2022/5/20.
 */
public abstract class ConstantPoolInfo {

    public static final byte CONSTANT_UTF8_INFO = 1;
    public static final byte CONSTANT_INTEGER_INFO = 3;
    public static final byte CONSTANT_FLOAT_INFO = 4;
    public static final byte CONSTANT_LONG_INFO = 5;
    public static final byte CONSTANT_DOUBLE_INFO = 6;
    public static final byte CONSTANT_CLASS_INFO = 7;
    public static final byte CONSTANT_STRING_INFO = 8;
    public static final byte CONSTANT_FIELDREF_INFO = 9;
    public static final byte CONSTANT_METHODREF_INFO = 10;
    public static final byte CONSTANT_INTERFACEMETHODREF_INFO = 11;
    public static final byte CONSTANT_NAMEANDTYPE_INFO = 12;
    public static final byte CONSTANT_METHODHANDLE_INFO = 15;
    public static final byte CONSTANT_METHODTYPE_INFO = 16;
    public static final byte CONSTANT_INVOKEDYNAMIC_INFO = 18;


    private byte tag;

    public byte getTag(){return tag;}

    public void setTag(byte tag){
        this.tag = tag;
    }

    public abstract void read(InputStream inputStream);


}
